package com.huaxin.hxmoduleworkorder.dto.request;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.*;
import lombok.Data;

import java.util.List;

/**
 * 更新客户评价请求 DTO（包含 ID）
 * <p>
 * 对应实体类：CustomerEvaluation
 * 用于接收前端提交的客户评价更新数据，包含主键 ID。
 * 适用于需要自包含请求体的更新场景。
 * </p>
 *
 * @author [你的名字或团队]
 * @since 2025-09-02
 */
@Data
public class CustomerEvaluationUpdateReqDTO {
    @Schema(description = "客户评价ID，主键，用于定位更新目标", example = "eval_123")
    @NotBlank(message = "客户评价ID不能为空")
    private String id;

    @Schema(description = "评分：1-5星", example = "5")
    @NotNull(message = "评分不能为空")
    @Min(value = 1, message = "评分不能低于1星")
    @Max(value = 5, message = "评分不能高于5星")
    private Integer rating;

    @Schema(description = "评价内容，客户反馈", example = "服务专业，响应迅速")
    @Size(max = 1000, message = "评价内容长度不能超过1000个字符")
    private String comment;

}